package request

// InventoryCheckProduct 盘点货物明细 (Renamed)
type InventoryCheckProduct struct {
	CargoID       uint    `json:"cargo_id" binding:"required"`    // 货物ID
	LocationID    uint    `json:"location_id" binding:"required"` // 货位ID
	ExpectedQty   float64 `json:"expected_qty"`                   // 账面数量
	ActualQty     float64 `json:"actual_qty"`                     // 实际数量
	DifferenceQty float64 `json:"difference_qty"`                 // 差异数量
	Remark        string  `json:"remark"`                         // 备注
}

// CompleteInventoryCheckRequest 完成库存盘点请求
type CompleteInventoryCheckRequest struct {
	Products []InventoryCheckProduct `json:"products" binding:"required"` // 盘点明细
}

// InventoryCheckCreateRequest 创建库存盘点请求
type InventoryCheckCreateRequest struct {
	WarehouseID uint   `json:"warehouse_id" binding:"required"` // 仓库ID
	Note        string `json:"note"`                            // 备注
}

// InventoryCheckListRequest 库存盘点列表请求
type InventoryCheckListRequest struct {
	PageRequest
	Keyword     string `form:"keyword"`      // 关键字
	WarehouseID *uint  `form:"warehouse_id"` // 仓库ID
	Status      *int   `form:"status"`       // 状态
	StartTime   string `form:"start_time"`   // 开始时间
	EndTime     string `form:"end_time"`     // 结束时间
}
